package com.yuyou.tas.lesson.vo.req;

import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.NotBlank;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;


/**
 * @author 
 */
public class ReqLessonAddOrUp{
	
	@ApiModelProperty(value = "假如新增课程时候引用已有课程，传被引用课程ID", required = false)
	private Long pId;
	
	@ApiModelProperty(value = "ID,为空则新增，不为空编辑", required = false)
	private Long id;
 
	@NotBlank(message="名称不能为空")
	@Length(max = 40 , message = "课程名称不能超过40个字")
	@ApiModelProperty(value = "名称", required = true)
	private String name;
	
	@NotNull(message="年级不能为空")
	@ApiModelProperty(value = "年级", required = true)
	private Long baseSectionId;
	
	@NotNull(message="科目不能为空")
	@ApiModelProperty(value = "科目", required = true)
	private Long dataSubject;
	
	@ApiModelProperty(value = "学期", required = true)
	private Long baseTrimesterId;
	
	@NotNull(message="层次不能为空")
	@ApiModelProperty(value = "层次", required = true)
	private Long baseLevelId;
	
	@ApiModelProperty(value = "教材版本", required = false)
	private Long baseTeachId;
	
	@ApiModelProperty(value = "年份", required = false)
	private Long dataYear;

	@NotNull(message="讲数不能为空")
	@Min(value=0,message="讲数必须大于0")
	@ApiModelProperty(value = "讲数", required = true)
	private Long chapterNum;

	@ApiModelProperty(value = "课程简介", required = false)
	@Length(max = 1000 , message = "课程简介不能超过1000个字")
	private String remark;
	
	@ApiModelProperty(value = "视频介绍地址", required = false)
	private String videoUrl;
	
	@ApiModelProperty(value = "视频介绍名字", required = false)
	private String videoName;
	
	@ApiModelProperty(value = "视频介绍大小", required = false)
	private BigDecimal videoSize;
	
	
	
	
	
	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public String getVideoUrl() {
		return videoUrl;
	}

	public void setVideoUrl(String videoUrl) {
		this.videoUrl = videoUrl;
	}

	public String getVideoName() {
		return videoName;
	}

	public void setVideoName(String videoName) {
		this.videoName = videoName;
	}

	public BigDecimal getVideoSize() {
		return videoSize;
	}

	public void setVideoSize(BigDecimal videoSize) {
		this.videoSize = videoSize;
	}

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Long getBaseSectionId() {
		return baseSectionId;
	}

	public void setBaseSectionId(Long baseSectionId) {
		this.baseSectionId = baseSectionId;
	}



	public Long getDataSubject() {
		return dataSubject;
	}

	public void setDataSubject(Long dataSubject) {
		this.dataSubject = dataSubject;
	}

	public Long getBaseTrimesterId() {
		return baseTrimesterId;
	}

	public void setBaseTrimesterId(Long baseTrimesterId) {
		this.baseTrimesterId = baseTrimesterId;
	}

	public Long getBaseLevelId() {
		return baseLevelId;
	}

	public void setBaseLevelId(Long baseLevelId) {
		this.baseLevelId = baseLevelId;
	}

	public Long getBaseTeachId() {
		return baseTeachId;
	}

	public void setBaseTeachId(Long baseTeachId) {
		this.baseTeachId = baseTeachId;
	}

	public Long getDataYear() {
		return dataYear;
	}

	public void setDataYear(Long dataYear) {
		this.dataYear = dataYear;
	}

	public Long getChapterNum() {
		return chapterNum;
	}

	public void setChapterNum(Long chapterNum) {
		this.chapterNum = chapterNum;
	}

	public Long getpId() {
		return pId;
	}

	public void setpId(Long pId) {
		this.pId = pId;
	}

	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
}